popover: Keep a ref on the parent scrollable
authorCarlos Garnacho <carlosg@gnome.org>
Thu, 5 Feb 2015 13:17:51 +0000 (14:17 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 5 Feb 2015 14:08:12 +0000 (15:08 +0100)
This ensures the scrollable is still alive on dispose(), and properly unset
after disconnecting all signal handlers.

gtk/gtkpopover.c

index 38dcf51638161726025d3e5aa6d2d0de700ba1ab..c6afcfa29d81e1576e1f13df4f5526e50dad808f 100644 (file)
@@ -1591,12 +1591,15 @@ _gtk_popover_set_scrollable (GtkPopover    *popover,
           g_object_unref (priv->hadj);
           priv->hadj = NULL;
         }
+
+      g_object_unref (priv->parent_scrollable);
     }
 
   priv->parent_scrollable = scrollable;
 
   if (scrollable)
     {
+      g_object_ref (scrollable);
       priv->vadj = gtk_scrollable_get_vadjustment (scrollable);
       priv->hadj = gtk_scrollable_get_hadjustment (scrollable);